package response

import (
	"fmt"
	"time"
)

// JSONTime 自定义时间类型
type JSONTime time.Time

// MarshalJSON 实现自定义时间格式化
func (t JSONTime) MarshalJSON() ([]byte, error) {
	stamp := fmt.Sprintf("\"%s\"", time.Time(t).Format("2006-01-02 15:04:05"))
	return []byte(stamp), nil
}

// AdminUserListItem 用户列表项
type AdminUserListItem struct {
	ID        uint     `json:"id"`
	Email     string   `json:"email"`
	Phone     string   `json:"phone"`
	Status    int      `json:"status"`
	CreatedAt JSONTime `json:"created_at"`
	UpdatedAt JSONTime `json:"updated_at"`
}

// AdminUserListResp 用户列表响应
type AdminUserListResp struct {
	Total int64               `json:"total"`
	List  []AdminUserListItem `json:"list"`
}
